import 自动测试
from 插件.基础函数.常用函数 import *
from 工程.九州项目.接收激励.公共函数 import *

    
def 输入过压欠压保护测试初始化():
    # 射频矩阵1.连接()
    频谱仪1.连接()
    产品初始化()
    电源初始化()
    频谱仪1.设置参考幅度(5)
    频谱仪1.设置频率起点(398e6-5e7)
    频谱仪1.设置频率终点(398e6+5e7)
    频谱仪1.设置分析带宽自动()
    频谱仪1.设置视频带宽(5e3)
    频谱仪1.设置开触发()
    延时(2)
    zbb产品.被测产品SPI.设置PTT控制指令("PTT有效")
    zbb产品.被测产品SPI.设置70M(True)
    延时(1)
    zbb路由.测试输入过压欠压保护测试()
    print("输入过压欠压测试初始化")
    
def 输入过压欠压保护测试():
    频点=398
    频率=频点*1e6
    程控电源1.设置电压(36)

    zbb产品.被测产品SPI.设置配置参数指令(通道选择='话音1',话音工作模式='常规',话音常规字段调制方式='AM')
    zbb产品.被测产品SPI.设置频率控制指令("话音1",频率)

    延时(3)
    频谱仪1.设置寻峰值()

    仪器主峰值=频谱仪1.读幅度()
    主峰值=按值转换(仪器主峰值,0.1,0)

    主峰值=主峰值+计算插损(频点)
    print(主峰值,计算插损(频点))
    项目="输入过压欠压保护测试过压28->36V()"
    判断合格保存(项目,主峰值,0,4)

    程控电源1.设置电压(28)

    zbb产品.被测产品SPI.设置配置参数指令(通道选择='话音1', 话音工作模式='常规', 话音常规字段调制方式='AM')
    zbb产品.被测产品SPI.设置频率控制指令("话音1", 频率)

    延时(3)
    频谱仪1.设置寻峰值()

    仪器主峰值 = 频谱仪1.读幅度()
    主峰值 = 按值转换(仪器主峰值, 0.1, 0)

    主峰值 = 主峰值 + 计算插损(频点)
    print(主峰值, 计算插损(频点))
    项目 = "输入过压欠压保护测试过压36->28V()"
    判断合格保存(项目, 主峰值, 0, 4)

    程控电源1.设置电压(18)
    延时(1)
    zbb产品.被测产品SPI.设置配置参数指令(通道选择='话音1',话音工作模式='常规',话音常规字段调制方式='AM')
    zbb产品.被测产品SPI.设置频率控制指令("话音1",频率)

    延时(1)
    频谱仪1.设置寻峰值()

    仪器主峰值=频谱仪1.读幅度()
    主峰值=按值转换(仪器主峰值,0.1,0)

    主峰值=主峰值+计算插损(频点)
    print(主峰值,计算插损(频点))

    项目="输入过压欠压保护测试欠压28->18V()"
    判断合格保存(项目,主峰值,0,4)

    程控电源1.设置电压(28)
    延时(1)
    zbb产品.被测产品SPI.设置配置参数指令(通道选择='话音1', 话音工作模式='常规', 话音常规字段调制方式='AM')
    zbb产品.被测产品SPI.设置频率控制指令("话音1", 频率)

    延时(1)
    频谱仪1.设置寻峰值()

    仪器主峰值 = 频谱仪1.读幅度()
    主峰值 = 按值转换(仪器主峰值, 0.1, 0)

    主峰值 = 主峰值 + 计算插损(频点)
    print(主峰值, 计算插损(频点))

    项目 = "输入过压欠压保护测试欠压18->28V()"
    判断合格保存(项目, 主峰值, 0, 4)


if __name__=='__main__':
    pass
    输入过压欠压保护测试初始化()
    输入过压欠压保护测试()